Branch elimination by condition merging
نویسندگان
چکیده
Conditional branches are expensive. Branches require a significant percentage of execution cycles since they occur frequently and cause pipeline flushes when mispredicted. In addition, branches result in forks in the control flow, which can prevent other code-improving transformations from being applied. In this paper we describe profile-based techniques for replacing the execution of a set of two or more branches with a single branch on a conventional scalar processor. These sets of branches can include tests of multiple variables. For instance, the test if (p1 != 0 && p2 != 0), which is testing for NULL pointers, can be replaced with if (p1 & p2 != 0). Program profiling is performed to target condition merging along frequently executed paths. The results show that eliminating branches by merging conditions can significantly reduce the number of conditional branches executed in non-numerical applications.
منابع مشابه
Branch Elimination via Multi-variable Condition Merging
Conditional branches are expensive. Branches require a signi cant percentage of execution cycles since they occur frequently and cause pipeline ushes when mispredicted. In addition, branches result in forks in the control ow, which can prevent other code-improving transformations from being applied. In this paper we describe pro le-based techniques for replacing the execution of a set of two or...
متن کاملTarget setting in the process of merging and restructuring of decision-making units using multiple objective linear programming
This paper presents a novel approach to achieving the goals of data envelopment analysis in the process of reconstruction and integration of decision-making units by using multiple objective linear programming. In this regard, first, we review inverse data envelopment analysis models for data reconstruction and integration. We present a model with multi-objective linear programming structure in...
متن کاملMerging DMUs Based on of the idea Inverse DEA
In this paper, we propose a novel method using multiple-objective programming problems to answer the following question: if among a group of decision making units (DMUs), a subset of DMUs are required to merge and form a new DMU with specific input/output levels and a predefined efficiency target, how much should be the outputs/inputs of the merged DMU? This question answered according to the c...
متن کاملBranch merging for scheduling concurrent executions of branch operatio - Computers and Digital Techniques, IEE Proceedings-
Branches are a major limiting factor to instruction-level parallelism. One solution is to execute several branches simultaneously using multiway branching architectures. Such architectures are especially important when the instruction issue width becomes large. The authors study the problem of compile-time scheduling of branch operations on such architectures: an optimisation called branch merg...
متن کاملResource Cost Results for One-Way Entanglement Distillation and State Merging of Compound and Arbitrarily Varying Quantum Sources
We consider one-way quantum state merging and entanglement distillation under compound and arbitrarily varying source models. Regarding quantum compound sources, where the source is i.i.d., but the source state an unknown member of a certain set of density matrices, we continue investigations begun in Ref. 7 and determine the classical as well as entanglement cost of state merging. We further i...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Softw., Pract. Exper.
دوره 35 شماره
صفحات -
تاریخ انتشار 2005